package chapter09

import org.apache.spark.sql.{DataFrame, SparkSession}

/**
 * author: 余辉
 * blog: https://blog.csdn.net/silentwolfyh
 * descriptions:
 * date: 2024 - 09 - 02 1:27 下午
 */
object Demo01 {
  def main(args: Array[String]): Unit = {
    /**
     * 1  获取编程环境   SparkSession ，使用sparksql处理结构化数据
     */

    val session: SparkSession = SparkSession.builder()
      .master("local[*]")
      .appName("test02")
      .getOrCreate()

    /***
     * 2 加载结构化数据   RDD +  数据结构  =  DataFrame
     */
    val frame: DataFrame = session.read.option("header" , "true").csv("BookData/input/08user.txt")

    /**
     * 3 创建视图  使用sql分析数据
     */
    frame.createTempView("tb_user")
    session.sql(
      """
        |select
        |id ,
        |name
        |from
        |tb_user
        |
        |""".stripMargin).show()
    /*    frame.printSchema()  //打印结构
        frame.show()   // 打印结构*/

    /***
     * 结果：
     *
     * +---+--------+
     * | id|    name|
     * +---+--------+
     * |  1|北京小辉|
     * |  2|   yuhui|
     * |  3|    余辉|
     * |  4|    涛哥|
     * |  5|    抖音辉哥大数据|
     * +---+--------+
     */
  }
}